#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
地区时间格式转换器
将不同地区的时间表示格式进行转换的工具
"""

def convert_time_format(year, month, day, hour, minute, second, region):
    """
    根据用户选择的地区，将时间转换为对应地区的时间格式
    
    Args:
        year: 年份
        month: 月份
        day: 日期
        hour: 小时
        minute: 分钟
        second: 秒
        region: 地区
    
    Returns:
        转换后的时间字符串
    """
    # 确保数值格式正确
    year_str = str(year).zfill(4)
    month_str = str(month).zfill(2)
    day_str = str(day).zfill(2)
    hour_str = str(hour).zfill(2)
    minute_str = str(minute).zfill(2)
    second_str = str(second).zfill(2)
    
    # 根据地区选择对应的时间格式
    if region == "中国":
        # 中国: YYYYMMDD日 HH:mm:ss
        return f"{year_str}{month_str}{day_str}日 {hour_str}:{minute_str}:{second_str}"
    elif region == "美国":
        # 美国: MM/DD/YYYY HH:mm:ss
        return f"{month_str}/{day_str}/{year_str} {hour_str}:{minute_str}:{second_str}"
    elif region == "英国" or region == "澳大利亚" or region == "法国":
        # 英国、澳大利亚、法国: DD/MM/YYYY HH:mm:ss
        return f"{day_str}/{month_str}/{year_str} {hour_str}:{minute_str}:{second_str}"
    elif region == "德国" or region == "俄罗斯":
        # 德国、俄罗斯: DD.MM.YYYY HH:mm:ss
        return f"{day_str}.{month_str}.{year_str} {hour_str}:{minute_str}:{second_str}"
    elif region == "加拿大":
        # 加拿大: YYYY-MM-DD HH:mm:ss
        return f"{year_str}-{month_str}-{day_str} {hour_str}:{minute_str}:{second_str}"
    else:
        return "不支持的地区"

def main():
    """
    主函数，接收用户输入并进行时间格式转换
    """
    print("===== 地区时间格式转换器 =====")
    print("支持的地区: 中国、美国、英国、德国、俄罗斯、澳大利亚、法国、加拿大")
    
    try:
        # 获取用户输入的时间信息
        year = int(input("请输入年份: "))
        month = int(input("请输入月份: "))
        day = int(input("请输入日期: "))
        hour = int(input("请输入小时 (0-23): "))
        minute = int(input("请输入分钟 (0-59): "))
        second = int(input("请输入秒 (0-59): "))
        
        # 验证时间输入的有效性
        if not (1 <= month <= 12):
            print("错误: 月份必须在1-12之间")
            return
        if not (1 <= day <= 31):
            print("错误: 日期必须在1-31之间")
            return
        if not (0 <= hour <= 23):
            print("错误: 小时必须在0-23之间")
            return
        if not (0 <= minute <= 59):
            print("错误: 分钟必须在0-59之间")
            return
        if not (0 <= second <= 59):
            print("错误: 秒必须在0-59之间")
            return
        
        # 获取用户选择的地区
        region = input("请输入地区: ")
        
        # 进行时间格式转换
        formatted_time = convert_time_format(year, month, day, hour, minute, second, region)
        
        # 输出转换后的时间
        print(f"转换后的时间格式: {formatted_time}")
        
    except ValueError:
        print("错误: 请输入有效的数字")
    except Exception as e:
        print(f"发生错误: {e}")

if __name__ == "__main__":
    main()